Transferring Complex Data Type through the Start Attended Job Integration
Via the Start Attended Job integration, DRUID offers bot authors the possibility to bidirectional transfer complex data type between DRUID and UiPath. This is very useful when you want to transfer DRUID data collections or conversational data stored in DRUID entities to UiPath attended processes. The integration provides a simplified way to map both DRUID flat data type and complex data such as data collections (Entity List) or unique set of data (Entity), in the Process arguments table both on the Request and Response.
Mapping Request Arguments
This section provides you with information on how to map UiPath input arguments to DRUID entity fields.
To map UiPath arguments to DRUID Relational Entity Model, use the following reference table.
DRUID entity field type |
UiPath Process Argument type |
---|---|
EntityList |
JArray |
DataTable |
|
Entity |
JObject |
Dictionary |
To better understand how to map complex data type, let’s consider the following example: we want to send DRUID flat and complex data type to a UiPath attended process. We have an entity called UiPathCollection with the following entity relational model:
A detailed view on the entities fields and field types:
Following the mapping reference table, this section provides mapping examples for sending complex DRUID data to a UiPath attended process.
DRUID Connector will send all data from [[UiPathCollection]] entity in the right format for each corresponding UiPath process argument.
Mapping examples
UiPath Process Argument |
Argument Type |
DRUID entity name |
DRUID Entity Type |
---|---|---|---|
in_datatable (DataTable) |
input |
[[UiPathCollection]].DataTable |
EntityList |
in_jArray (JArray) |
input |
[[UiPathCollection]].JArray |
EntityList |
in_jObject (JObject) |
input |
[[UiPathCollection]].Dictionary |
Entity |
in_dictionary (Dictionary<String, String>) |
input |
[[UiPathCollection]].Dictionary |
Entity |
Obiect (JObject) |
output |
[[UiPathCollection]].Dictionary |
Entity |
dictionar (Dictionary<String, String>) |
output |
[[UiPathCollection]].Dictionary |
Entity |
ColectieJarray (JArray) |
output |
[[UiPathCollection]].JArray |
EntityList |
DataTabel (DataTable)
|
output |
[[UiPathCollection]].DataTable |
EntityList |
Sending the entire content of a DRUID entity
Additionally, if bot authors prefer to send the entire content of a DRUID entity, to / from a single UiPath argument, then that entity should simply be mapped without any fields.
Using DRUID Complex data type in Studio Process
The UiPath process gets the data transferred from DRUID through input arguments, and uses those arguments as needed, within the process.
Mapping Response Arguments
In a similar way, authors will map the process output arguments directly to corresponding entity / entity list fields, in the Response tab. The DRUID Platform will automatically map the response object to the response entity, by considering that all properties inside the response object have the same name as the DRUID response entity fields.
DataTable Response Mapping Example:
JObject Response Mapping Example: